package com.xjt.wx_admin.service;

import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xjt.wx_admin.entity.User;
import com.xjt.wx_admin.entity.dto.EditRemarkParam;
import com.xjt.wx_admin.entity.dto.LoginParam;
import com.xjt.wx_admin.entity.dto.UserDto;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Xujt
 * @since 2023-03-22 11:33:28
 */
public interface UserService extends IService<User> {


    /**
     * 获取用户
     *
     * @param userName 用户名
     * @return {@link User}
     */
    User getUser(String userName);

    /**
     * 获取用户
     *
     * @param userName 用户名
     * @param password 密码
     * @return {@link User}
     */
    User getUser(String userName,String password);

    /**
     * 得到用户名
     *
     * @param userName 用户名
     * @return {@link User}
     */
    User getByUserName(String userName);


    /**
     * 查询用户列表
     *
     * @return {@link List}<{@link UserDto}>
     */
    List<UserDto> queryUserList(String name);

    /**
     * 搜索用户列表
     *
     * @param name 名字
     * @return {@link List}<{@link UserDto}>
     */
    List<UserDto> searchUserList(String name);


    R editRemark(EditRemarkParam editRemarkParam);

    R<String> login(LoginParam loginParam);
}
